#pragma once

#include "AIS_InteractiveObject.hxx"
#include "Graphic3d_ArrayOfPoints.hxx"

class AIS_MyPointCloud :
	public AIS_InteractiveObject
{
public:
	AIS_MyPointCloud();
	~AIS_MyPointCloud(){}

	void SetPoints(const Handle(Graphic3d_ArrayOfPoints)& thePoints);

	virtual  void Compute(const Handle(PrsMgr_PresentationManager3d)& aPresentationManager, const Handle(Prs3d_Presentation)& aPresentation, const Standard_Integer aMode = 0);
	void ComputeSelection(const Handle(SelectMgr_Selection)&, const Standard_Integer) {}


	DEFINE_STANDARD_RTTIEXT(AIS_MyPointCloud, AIS_InteractiveObject)

protected:
	Handle(Graphic3d_ArrayOfPoints) myPoints;    //!< points array for presentation

};

DEFINE_STANDARD_HANDLE(AIS_MyPointCloud, AIS_InteractiveObject)
